home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Language/OS - Multiplatform Resource Library
/
LANGUAGE OS.iso
/
cpp_libs
/
rjs.lha
/
RJS
/
CmdLine
/
src
/
CmdOpt_boolean.C
< prev
next >
Wrap
C/C++ Source or Header
|
1991-06-14
|
815b
|
44 lines
#include "CmdLine.h"
#include <RJS/Regex.h>
RJS_CmdOpt_boolean::RJS_CmdOpt_boolean(const char *k, RJS_CmdOpt::CmdOptFlags f)
: RJS_CmdOpt(k,RJS_CmdOpt::CmdOptFlags(f|Value))
{
val=0;
}
RJS_CmdOpt_boolean::RJS_CmdOpt_boolean(const char *k, const RJS_String &df,
RJS_CmdOpt::CmdOptFlags f) : RJS_CmdOpt(k,df,f)
{
val=0;
}
const char *RJS_CmdOpt_boolean::value_type()
{
return "boolean";
}
void RJS_CmdOpt_boolean::reset()
{
RJS_CmdOpt::reset();
val=0;
}
int RJS_CmdOpt_boolean::set_value()
{
static RJS_Regex true("[yYtT1]"),false("[nNfF0]");
if (RJS_CmdOpt::val(0,1).contains(true)) val=1;
else if (RJS_CmdOpt::val(0,1).contains(false)) val=0;
else return 0;
return 1;
}
void RJS_CmdOpt_boolean::dump()
{
RJS_CmdOpt::dump();
cout << "boolean: " << (value() ? "true" : "false") << endl;
}